/*                          UX-Framework                               
 *                                                                 
 *  iZE Co.,Ltd. Copyright 2009 All rights reserved.          
 *  This file is distributed under the terms of the GNU Lesser 
 *  General Public License, described in file LICENSE.                                     
 */
package jp.ize.ux;

import flash.system.IME;

// {{{ enum IMEMode {
/**
 * IMEのモードプロパティで使用する枚挙クラスです。
 */
enum IMEMode {
	KOREAN;
	JAPANESE_KATAKANA_HALF;
	JAPANESE_KATAKANA_FULL;
	JAPANESE_HIRAGANA;
	CHINESE;
	ALPHANUMERIC_HALF;
	ALPHANUMERIC_FULL;
}
// }}}
// {{{ class IME
/** 
 * IMEクラス<br>
 * インプットメソッドのコントロールクラスです。<br>
 *
 * @author		iZE Co., Ltd.<br>
 * @version		$Id$<br>
 */
class IME
{
	// {{{ properties
	/** インプットメソッドが有効かどうかを示します。 */
	public static var enabled(getEnabled, setEnabled) : Bool;
	/** インプットメソッドのモードを示します。 */
	public static var mode(getMode, setMode) : IMEMode;
	// }}}
	// {{{ public function getEnabled() : Bool
	/**
	 * インプットメソッドが有効どうかのフラグを取得する。
	 */
	private static function getEnabled() : Bool
	{
		return enabled;
	}
	// }}}
	// {{{ public function setEnabled( flag : Bool ) : Void
	/**
	 * インプットメソッドの有効/無効を切り替えるフラグを設定する。
	 */
	private static function setEnabled( flag : Bool ) : Bool
	{
		enabled = flag;
		return enabled;
	}
	// }}}
	// {{{ public function getMode() : IMEMode
	/**
	 * インプットメソッドが有効どうかのフラグを取得する。
	 */
	private static function getMode() : IMEMode
	{
		return mode;
	}
	// }}}
	// {{{ public function setMode( m : IMEMode ) : Void
	/**
	 * インプットメソッドの有効/無効を切り替えるフラグを設定する。
	 */
	private static function setMode( m : IMEMode ) : IMEMode
	{
		mode = m;
		return mode;
	}
	// }}}
}
// }}}
